﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ProgramacionRedes {
    public partial class FrmConfiguracion : Form {
        private bool hay_cambios = false;
        private Cliente cliente;

        public FrmConfiguracion(Cliente cliente) {
            InitializeComponent();
            this.cliente = cliente;
            propertyGrid1.SelectedObject = ProgramacionRedes.Properties.Settings.Default;
            propertyGrid1.PropertyValueChanged += new PropertyValueChangedEventHandler(propertyGrid1_PropertyValueChanged);
        }

        void propertyGrid1_PropertyValueChanged(object s, PropertyValueChangedEventArgs e) {
            hay_cambios = true;
        }

        private void FrmConfiguracion_FormClosing(object sender, FormClosingEventArgs e) {
            if (hay_cambios) {
                DialogResult res = MessageBox.Show("Hay cambios en la configuración. ¿Quiére guardarlo?", 
                                                   "¡Atención!", 
                                                   MessageBoxButtons.YesNoCancel, 
                                                   MessageBoxIcon.Exclamation, 
                                                   MessageBoxDefaultButton.Button2);
                if (res == DialogResult.Cancel) {
                    e.Cancel = true;
                } else if (res == DialogResult.Yes) {
                    ProgramacionRedes.Properties.Settings.Default.Save();
                    cliente.IpLocal = ProgramacionRedes.Properties.Settings.Default.IPLocal;
                    cliente.PuertoLocal = ProgramacionRedes.Properties.Settings.Default.PuertoLocal;
                    cliente.IpRemota = ProgramacionRedes.Properties.Settings.Default.IPRemota;
                    cliente.PuertoRemoto = ProgramacionRedes.Properties.Settings.Default.PuertoRemoto;
                }
            }
        }
    }
}
